package com.lap.auth.application.authentication.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
import lombok.Builder;
import lombok.Data;

@Builder
@Data
@Schema(description = "Token数据返回")
public class TokenDto {

  @Schema(description = "用户唯一标识")
  private Integer userId;

  @Schema(description = "帐号")
  private String userName;

  @Schema(description = "姓名")
  private String fullName;

  @Schema(description = "部门/组织ID")
  private Integer deptId;

  @Schema(description = "用户头像")
  private String avatar;

  @Schema(description = "访问Token")
  private String accessToken;

  @Schema(description = "刷新Token")
  private String refreshToken;

  @Schema(description = "过期时间")
  private Date expires;

  @Schema(description = "角色集合")
  private List<String> roles;

  @Schema(description = "功能集合")
  private List<String> permissions;
}
